package com.lvandroid.play.player;

import android.view.SurfaceHolder;
import android.view.View;

/**
 * 播放相关接口
 */
public interface IPlayer {

    /**
     * 简单一键播放接口，比如text pdf html doc这类资源，与多媒体相比播放流程会简单很多
     * 如果多媒体文件调用此方法开始播放的，那么播放器准备好了可以自动播放，不需要主动调用start
     * @param source 资源path，可以是本地文件，也可以是网络url
     */
    void start(String source);

    /**
     * 正常流程start
     */
    void start();

    /**
     * 准备
     */
    void prepare();

    /**
     * 停止播放
     */
    void stop();

    /**
     * 暂停播放
     */
    void pause();

    /**
     * 恢复播放
     */
    void resume();

    /**
     * 重置播放器
     */
    void reset();

    /**
     * 设置播放进度
     * @param position 播放进度
     */
    void seek(long position);

    /**
     * 循环播放
     * @param loop true：循环，false：仅播放一次
     */
    void loopPlay(boolean loop);

    /**
     * 资源准备好之后，设置自动开始播放，不需要手动调用start
     * @param auto true:自动播放</br> false:手动播放
     */
    void autoPlay(boolean auto);
}
